package com.lbssoft.gpsbd.service;

import com.lbssoft.gpsbd.model.Group;
import com.lbssoft.gpsbd.model.Result;
import com.lbssoft.gpsbd.model.vo.GroupGeofencesParam;
import com.lbssoft.gpsbd.model.vo.Move;

/**
 * Created by Riven on 2018/3/15.
 */
public interface GroupService {

    /**
     * 获取用户下所有分组
     * @return
     */
    Result list();

    /**
     * 创建分组
     * @param group
     * @return
     */
    Result add(Group group);

    /**
     * 删除分组
     * @param id
     * @return
     */
    Result delete(int id);

    /**
     * 修改分组
     * @param group
     * @return
     */
    Result update(Group group);

    /**
     *  分组绑定围栏
     * @param param
     * @return
     */
    Result groupBindGeofences(GroupGeofencesParam param);

    /**
     * 分组解除围栏
     * @param param
     * @return
     */
    Result groupUnbindGeofences(GroupGeofencesParam param);

    /**
     * 获取绑定的围栏
     * @param id
     * @return
     */
    Result getGeofenceIds(int id);

    void move(Move move);
}
